<?php
ini_set("soap.wsdl_cache_enabled", 0);

// Define path to application directory
defined('APPLICATION_PATH')
    || define('APPLICATION_PATH', realpath(dirname(__FILE__) . '/application'));

// Define application environment
defined('APPLICATION_ENV')
    || define('APPLICATION_ENV', (getenv('APPLICATION_ENV') ? getenv('APPLICATION_ENV') : 'production'));

// Ensure library/ is on include_path
set_include_path(implode(PATH_SEPARATOR, array(
    realpath(APPLICATION_PATH . '/../library'),
    realpath(APPLICATION_PATH . '/models'),
    realpath(APPLICATION_PATH . '/config'),
    realpath(APPLICATION_PATH . '/../library/Propel/runtime/lib'),
    get_include_path(),
)));
/** Zend_Application */
require_once 'Zend/Application.php';

// Create application, bootstrap, and run
$application = new Zend_Application(
    APPLICATION_ENV,
    APPLICATION_PATH . '/configs/application.ini'
);

$loader = new Zend_Loader_Autoloader_Resource(array(
		'namespace' => 'Application_',
		'basePath'  => realpath(APPLICATION_PATH . '/'),
));

try {
	set_error_handler(function($errno, $errstr, $errfile, $errline) {
		new Skoda_Exception_Notice($errno, $errstr, $errfile, $errline);
	});
	register_shutdown_function(function () {
		$error  = error_get_last();
		if ($error !== null) {
			new Skoda_Exception_Critical($error['type'], $error['message'], $error['file'], $error['line']);
			die;
		}
	});
	$application->bootstrap()->run();
	
} catch (Exception $ex) {
	echo $ex->getMessage();
}
